import { request } from "@/http/axios"
export function projectAll() {
    return request({
        url: '/projectType/all',
        method: "get"
    })
}
export function projectPage(form, pageSize, pageNum) {
    return request({
        url: 'project/projectPage',
        method: 'post',
        data: {
            pageSize: pageSize,
            pageNum: pageNum,
            title: form.title,
            type: form.type,
            status: form.status
        }
    })
}
export function cementDelects(Ids) {
    return request({
        url: 'cement/cementDelects',
        method: 'post',
        data: {
            Ids: Ids
        }
    })
}

export function cementPage(form, pageSize, pageNum) {
    return request({
        url: 'cement/cementPage',
        method: 'post',
        data: {
            pageSize: pageSize,
            pageNum: pageNum,
            title: form.title,
            type: form.type+'',
            status: form.status+'',
            userName: form.userName,
            cementTypes: form.cementTypes
        }
    })
}
export function cementAdd(form) {
    return request({
        url: 'cement/cementAdd',
        method: 'post',
        data: {
            title: form.title,
            type: form.type+'',
            content: form.content,
            imgUrl: form.imgUrl,
            file: form.file,
            userName: form.userName,
        }
    })
}
export function cementEdit(form) {
    return request({
        url: 'cement/cementEdit',
        method: 'post',
        data: {
            id: form.id,
            title: form.title,
            type: form.type+'',
            status: form.status+'',
            content: form.content,
            imgUrl: form.imgUrl,
            file: form.file,
        }
    })
}

export function cementTitle(title) {
    const url = `cement/cementTitle?title=${encodeURIComponent(title)}`;
    return request({
        url: url,
        method: 'get',
    })
}

export function announCement(title) {
    const url = `cement/announCement`;
    return request({
        url: url,
        method: 'get',
    })
}
export function getFile(fileName) {
    const url = `upload/getFiles?fileName=${encodeURIComponent(fileName)}`;
    return request({
        url: url,
        method: 'get',
    });
}
export function commentsProjectId(id) {
    const url = `comments/projectId?id=${encodeURIComponent(id)}`;
    return request({
        url: url,
        method: 'get',
    })
}
export function commendId(id,userId) {
    const url = `recommend/commendId?id=${encodeURIComponent(id)}&userId=${encodeURIComponent(userId)}`;
    return request({
        url: url,
        method: 'get',
    })
}
export function commendIds(id) {
    const url = `recommend/Id?id=${encodeURIComponent(id)}`;
    return request({
        url: url,
        method: 'get',
    })
}
export function recommend(form,score){
    return request({
        url: '/recommend/recommend',
        method: "post",
        data: {
            projectId: form.projectId,
            userId: form.userId,
            score: score
        }
    })
}

export function submitContent(form){
    return request({
        url: '/comments/contentsAdd',
        method: "post",
        data: {
            content: form.content,
            projectId: form.projectId,
            userId: form.userId,
            buserId: form.buserId
        }
    })
}
export function commentSupport(id,support){
    return request({
        url: '/comments/commentSupport',
        method: "post",
        data: {
            id: id,
            support: support
        }
    })
}

export const openCement = (data) => {
    // 移除无法克隆的数据，只传递 JSON 可序列化的部分
    const cloneableItem = { ...data }; // 复制对象
    delete cloneableItem.someNonCloneableProperty; // 移除无法克隆的属性
    const channel = new BroadcastChannel('cementData');
    // 监听是否有其他标签页的响应
    channel.postMessage(cloneableItem); // 发送克隆后的对象
    window.open('http://localhost:3333/#/cementDetails', 'cementDetails');
    localStorage.setItem('cementData', JSON.stringify(cloneableItem))
}
export const openProject = (data) => {
  // 移除无法克隆的数据，只传递 JSON 可序列化的部分
  const cloneableItem = { ...data }; // 复制对象
  delete cloneableItem.someNonCloneableProperty; // 移除无法克隆的属性
  const channel = new BroadcastChannel('projectData');
  // 监听是否有其他标签页的响应
  channel.postMessage(cloneableItem); // 发送克隆后的对象
  window.open('http://localhost:3333/#/projectDetails', 'projectDetails');
  localStorage.setItem('projectData', JSON.stringify(cloneableItem))
}

export function getUserInfoText(data,edit){
  const text = [
    "心有多大，舞台就有多大。思考的越多，得到的越多。因为思考可以释放能量。",
　　"位置低的人向位置高的人奔走时会觉得很温暖，但是一旦停下来就会感觉到寒冷。",
　　"多数人都拥有自己不了解的能力和机会，都有可能做到未曾梦想的事情。",
　　"每一个成功者都有一个开始。勇于开始，才能找到成功的路。",
　　"古之成大事者，不唯有超世之才，亦必有坚韧不拔之志也。",
　　"再长的路，一步步也能走完，再短的路，不迈开双脚也无法到达。",
　　"这个社会，是赢家通吃，输者一无所有，社会，永远都是只以成败论英雄。",
　　"任何一个行业，一个市场，都是先来的有肉吃，后来的汤都没的喝。",
　　"不管多么险峻的高山，总是为不畏艰难的人留下一条攀登的路。",
　　"因为穷人很多，并且穷人没有钱，所以，他们才会在网络上聊天抱怨，消磨时间。",
　　"活在当下，别在怀念过去或者憧憬未来中浪费掉你现在的生活。",
　　"强者向人们揭示的是确认人生的价值，弱者向人们揭示的却是对人生的怀疑。",
　　"不要对挫折叹气，姑且把这一切看成是在你成大事之前，必须经受的准备工作。",
　　"宁愿跑起来被拌倒无数次，也不愿规规矩矩走一辈子，就算跌倒也要豪迈的笑。",
　　"态度决定一切，实力捍卫尊严!人要经得起诱惑耐得住寂寞!",
  "这社会你改变不了就得适应，适应不了就得被淘汰!这叫适者生存!",
  "积极的人在每一次忧患中都看到一个机会，而消极的人则在每个机会都看到某种忧患。",
　　"不求与人相比，但求超越自己，要哭就哭出激动的泪水，要笑就笑出成长的性格!",
  "所有的忧伤都是过往，当时间慢慢沉淀，你会发现，自己的快乐比想象的多得多。",
　　"有事者，事竟成;破釜沉舟，百二秦关终归楚;苦心人，天不负;卧薪尝胆，三千越甲可吞吴。"
  ]
  if (edit===false){
    if (localStorage.getItem(data.realName)){
      return localStorage.getItem(data.realName);
    }else {
      var string = text[Math.floor(Math.random() * text.length)];
      localStorage.setItem(data.realName,string)
      return string
    }
  }else {
    localStorage.removeItem(data.realName);
    localStorage.setItem(data.realName,data.manifesto)
  }

}

export function getMemberInfoData(usernames) {
  return request({
    url: '/comments/getMemberInfo',
    method: 'post',
    data: {usernames: usernames}
  })
}
